Many services offered via the Internet, such as services provided by email service providers, provide a web interface (“webclient”) that allows users to interact with a server, such as a mail server, using a web browser. User connectivity to mail servers is facilitated by one or more web servers (typically Hypertext Transfer Protocol (HTTP) servers) that retrieve data in response to user web page requests. Mail servers and web servers are typically located in a data center or some other facility remote from the user. Redundancy is usually built into such systems, with redundant servers providing service in the event of a failure of a primary server and redundant communications links connected to the Internet to provide service in the event of a failure of one or more communications links.
Webclients do not maintain persistent connections (e.g., transmission control protocol (TCP) connections) to HTTP servers or to other servers with which a webclient is interacting via an HTTP server. Because of this, a notification (e.g., a new email notification) sent from such a server may not be received by a webclient because the server transmits the notification upon an event that triggers the notification and does not store such notifications or confirm a connection with the webclient before sending such notifications. Once sent, the server does not retain the notification, and therefore it is not possible for the webclient to later request notifications that have been sent in the past. Thus, a user of a webclient may not receive a notification intended to alert the user of an event occurrence.
When a user composes a message using a webclient, such as an email message, data associated with the message is saved locally inside the webclient. Such data may include recipient addresses and text content. When the user sends the message or chooses to save a draft of the message, this data is sent to the mail server for saving and/or processing. In some systems, such message content is automatically saved periodically. During message composition, a user may also attach data files (e.g., images, audio files, video files, etc.) to a message, but such files are not saved in a webclient during message composition and are not sent to a mail server until the user sends the message or manually saves a draft of the message. Upon a failure of connectivity to the HTTP server servicing the webclient during message composition, the attachment data may be lost.